Skip to content

Conversation

@gmkohler
Copy link
Contributor

@gmkohler gmkohler commented Dec 21, 2023

Not sure what should live in here versus mintlify.

Any and all suggestions are welcome for improving the docs.

I broke out "publish" into a separate ticket ION-285. If we make the repo private after publishing to PyPI then I'd imagine we should move all of this to Mintlify and change these docs to focus on developing it.

Gregory Kohler added 2 commits December 21, 2023 13:49
Idea here being we control which SDK version is being used but
allow developers to have higher patch versions of langchain.

https://python-poetry.org/docs/dependency-specification/#tilde-requirements
# Ionic Langchain

Pre-release. Do not use this.
Ionic Langchain provides a wrapper around the Ionic Commerce's SDK for use as a `Tool` in a custom Langchain agent. This tool will enable e-commerce for your agent, allowing your users to ask for product recommendations and purchase products through the agent chat interface.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jdmccarty I opted to write my own copy here but please suggest improvements. As a developer the website copy doesn't tell me a lot in plain english about what the tool is doing.

## Usage

Pre-release. Do not use this.
```python
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

more or less adapting what we have written in our demobot; happy to make modifications.

## Installation

Pre-release. Do not use this.
This tool requires at least `langchain@0.0.350` and can work with any greater patch release the `0.0.x` series.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've never written a public package; not sure about python version compatibility or how we should be managing that. I figure we don't need that right away but IMO worth figuring out.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should only support the latest LTS for the start.

When someone pays us money and needs a specific version that's another story imo.

readme = "README.md"
packages = [{include = "ionic_langchain"}]

[tool.poetry.dependencies]
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to add more metadata here in the effort towards publishing on PyPI?

https://packaging.python.org/en/latest/tutorials/packaging-projects/#configuring-metadata

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Eventually 💯

@gmkohler gmkohler changed the title [ION-282] document langchain tool [ION-283] document langchain tool Dec 21, 2023
@gmkohler gmkohler changed the title [ION-283] document langchain tool 📖 [ION-283] document langchain tool Dec 21, 2023
@gmkohler gmkohler merged commit 1ad389b into main Jan 2, 2024
@gmkohler gmkohler deleted the gmkohler/ION-282 branch January 2, 2024 18:47
gmkohler pushed a commit that referenced this pull request Jan 2, 2024
didn't do this in #5
@gmkohler gmkohler mentioned this pull request Jan 2, 2024
stewartjarod added a commit that referenced this pull request Jan 18, 2024
* 📦 upgrade SDK to 0.5.3 (#3)

* tests

* 📦 update ionic-sdk-python

* 🏷️ bump version

* inject ionic into tool (#4)

* let ionic be injected into tool

* 🏷️ bump version

* 📖 [ION-283] document langchain tool (#5)

* 📦 fleixble langchain dependency; pinned sdk

Idea here being we control which SDK version is being used but
allow developers to have higher patch versions of langchain.

https://python-poetry.org/docs/dependency-specification/#tilde-requirements

* 📖 first pass at documentation

* Update README.md

* 👷‍♂️📦🏷️ [ION-285] workflow for publishing new releases (#7)

* 👷‍♂️📦 workflow for publishing new releases

Right now this requires manually bumping poetry and creating a
git release but I added a couple of guardrails so that we ensure
we only publish when the poetry package version matches the github
release reference.

Future iteration will move the version bumping and release cutting
to the workflow.

* 🏷️ bump verison to 0.1.3

want something to test with when this merges

* set workflow up for iterative testing

* dry run for publishing
* warn instead of fail if tag checks fail

* 👷‍♂️ [ION-285] release publication workflow fixups (#8)

* 📌 pin python version

* 🐛 use ref_name instead of ref

ref is a lot longer, e.g. 'refs/heads/gmkohler/ION-285'
found with debug logging

* 🏷️ bump patch version

want to compare with new release

* 👷‍♂️ [ION-285] Revert "set workflow up for iterative testing" (#10)

* Revert "set workflow up for iterative testing"

This reverts commit 49cc39f.

* 🏷️ bump version to 0.1.5

want to test the release guardrails

* 👷‍♂️ [ION-285] adjust github expressions (#11)

* tidy expressions up

think it all needs to be interpolated

* 🏷️ poetry version patch

need to verify new changes

* 👷‍♂️ [ION-285] automate version bumping / tagging in release workflow (#9)

* 👷‍♂️ bump version within workflow

* ☑️ use type: choice for release input

This should enforce a dropdown

* fix release-action name

* tidy release step

* 🏷️ prepare version v0.1.7 for release

* 🏷️ prepare version v0.1.8 for release

* 📖 add sentence re: python version support (#12)

* 📖 install library from PyPI instead of GitHub (#13)

* Reduce min python version (#14)

* version

* readme

* whoops

* working example (#15)

---------

Co-authored-by: Gregory M Kohler <gregory@ionicapi.com>
Co-authored-by: gmkohler <gmkohler@users.noreply.github.com>
Co-authored-by: Owen Sims <owen@ionicapi.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants